package com.example.demo.jdk.proxy.dynamic_proxy;

import com.example.demo.jdk.proxy.static_proxy.IUserDao;
import com.example.demo.jdk.proxy.static_proxy.UserDao;

/**
 * 测试类
 * @author: htc
 * @date: Created in 10:59 2019/2/20.
 */
public class DynamicProxyTest {
    public static void main(String[] args) {
        //目标对象
        IUserDao target = new UserDao();
        System.out.println(target.getClass());

        //给目标对象，创建代理对象
        IUserDao proxy = (IUserDao) new ProxyFactory(target).getProxyInstance();

        // class $Proxy0   内存中动态生成的代理对象
        System.out.println(proxy.getClass());

        //执行方法   【代理对象】
        proxy.save();
    }
}
